package com.pureut.production.service;


import com.baomidou.mybatisplus.extension.service.IService;
import com.pureut.production.domain.ProcessSheet;
import com.pureut.production.domain.dto.*;
import com.pureut.production.domain.vo.MaterialInfoVo;
import com.pureut.production.domain.vo.ProcessSheetVo;
import com.pureut.production.domain.vo.PublicProcessVo;

import java.util.List;

/**
 * @author: CM
 * @date: 2023/2/17    13:37
 */
public interface ProcessSheetService  extends IService<ProcessSheet> {

    /**
     * 新增工艺卡
     * @param processSheetVo
     * @return
     */
    boolean add(ProcessSheetVo processSheetVo) throws Exception;

    /**
     * 修改工艺卡
     * @param processSheetVo
     * @return
     */
    boolean edit(ProcessSheetVo processSheetVo);

    /**
     * 删除工艺卡
     * @param ids
     * @return
     */
    int remove(String ids);

    /**
     * 查看工艺卡
     * @param id
     * @return
     */
    PublicProcessDto getView(Long id);

    /**
     * 工艺卡列表
     * @param processSheetVo
     * @return
     */
    List<ProcessSheetDto> selectSheetList(ProcessSheetVo processSheetVo);

    /**
     * 填写工艺属性
     * @param publicProcessVo
     * @return
     */
    boolean editTemplete(PublicProcessVo publicProcessVo);

    /**
     * 根据生产阶别找对应的线别
     * @param productionLevel
     * @return
     */
    List<GetLineDto> getLine(String productionLevel);

    /**
     * 根据生产阶别展示工艺流程
     * @param productionLevel
     * @return
     */
    List<GetProcessDto> getProcess(String productionLevel);

    /**
     * 查询物料信息
     * @param materialInfoVo
     * @return
     */
    List<MaterialInfoDto> getMaterialInfo(MaterialInfoVo materialInfoVo);
}

